<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>VueComponent</title>
    <script src="../js/vue.js"></script>
</head>
<body>
    <!-- 
        1、组件本质是一个名为VueComponent的构造函数，是Vue.extend生成的
        
        2、我们只需要写组件标签，Vue解析时会帮我们创建组件实例对象，即
        Vue帮我们执行： new VueComponent(options)

        3、每次调用Vue.extend 返回的都是一个全新的VueComponent  ！！！全新的

        4、组件配置中 this指向 VueComponent实例对象
           new Vue(option) 中 this指向 Vue实例对象
        
     -->
    <div id="app">
        <school></school>
    </div>

    
    <script>
        Vue.config.productionTip = false
       
        // 创建school组件
        const school = Vue.extend({
            template:`
                <div>
                    <h1>学校名称：{{schoolName}}</h1>
                    <h1>学校地址：{{address}}</h1>
                </div>
            `,
            data(){
                return{
                    schoolName:'尚硅谷',
                    address:'北京昌平',
                }
            }
        })


        const vm = new Vue({
            el:'#app',
            // 2、注册局部注册
            components:{
                school,
            },
        })
   </script>
</body>
</html>